Flash memory devices have developed into a popular source of non-volatile memory for a wide range of electronic applications. Flash memory devices typically use a one-transistor memory cell that allows for high memory densities, high reliability, and low power consumption. Common uses for flash memory include personal computers, flash drives, digital cameras, and cellular telephones. Program code and system data such as a basic input/output system (BIOS) are typically stored in flash memory devices for use in personal computer systems.
A typical flash memory device is a type of memory in which the array of memory cells is typically organized into memory blocks that can be erased and reprogrammed on block-by-block basis instead of one byte at a time. Changes in a threshold voltage of each of the memory cells, through erasing or programming of a charge storage structure (e.g., floating gate or charge trap) or other physical phenomena (e.g., phase change or polarization), determine the data value of each cell. The data in a cell of this type is determined by the presence or absence of the charge in the charge storage structure.
A programming operation typically comprises a series of incrementally increasing programming pulses that are applied to a control gate of a memory cell being programmed. A program verify operation after each programming pulse determines the threshold voltage of the memory cell resulting from the preceding programming pulse.
A typical program verify operation includes storing a target threshold voltage in a page buffer that is coupled to each data line (e.g., bit line) and applying a ramped voltage to the control gate of the memory cell being verified. When the ramped voltage reaches the threshold voltage to which the memory cell has been programmed, the memory cell turns on and sense circuitry detects a current on a bit line coupled to the memory cell. The detected current activates the sense circuitry to compare if the present threshold voltage is greater than or equal to the stored target threshold voltage. If the present threshold voltage is greater than or equal to the target threshold voltage, further programming is inhibited.
Performing a “greater than” comparison in the page buffer uses additional circuitry. For example, each page buffer might use two additional transistors just to perform the “greater than” comparison. Since each bit line is coupled to a different page buffer and a typical NAND flash memory device can have hundreds of thousands of bit lines, the additional circuitry just to perform the “greater than” comparison can add up to be millions of transistors. Such a large number of transistors take up valuable real estate on the integrated circuit die that can be used for additional memory cells.
For the reasons stated above, and for other reasons that will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for reducing the size of comparison circuitry in a memory device.